// 班级模型
const { DataTypes } = require('sequelize');
const sequelize = require('../config/database');

/**
 * 班级模型
 * 用于存储班级信息
 */
const Class = sequelize.define('Class', {
  /**
   * 班级ID，主键，自增
   */
  id: {
    type: DataTypes.INTEGER,
    primaryKey: true,
    autoIncrement: true,
    allowNull: false
  },
  /**
   * 班级名称
   */
  className: {
    type: DataTypes.STRING(50),
    allowNull: false,
    unique: true,
    comment: '班级名称'
  },
  /**
   * 年级
   */
  grade: {
    type: DataTypes.STRING(20),
    allowNull: false,
    comment: '年级'
  },
  /**
   * 创建时间
   */
  createdAt: {
    type: DataTypes.DATE,
    allowNull: false,
    defaultValue: DataTypes.NOW
  },
  /**
   * 更新时间
   */
  updatedAt: {
    type: DataTypes.DATE,
    allowNull: false,
    defaultValue: DataTypes.NOW
  }
}, {
  tableName: 'classes',
  timestamps: true
});

module.exports = Class;